trait TypeConstructor1 {
  type A 
  var x: A
  def bar: Int
}

trait Foo extends TypeConstructor1 {
  type A <: String
  def bar = x.length
}

class Prob[x <: TypeConstructor1] {
  
}